package com.app.model;

import java.math.BigDecimal;

import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author yoominic
 * @since 2025-02-27
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class Yonghu implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 自增主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 唯一标识
     */
    private String uniqueId;

    /**
     * 租赁证编号
     */
    private String leaseCertificateNumber;

    /**
     * 关联标识
     */
    private String relatedId;

    /**
     * 头像
     */
    private String faceUrl;

    /**
     * 第一承租人姓名
     */
    private String firstTenantName;

    /**
     * 第二承租人姓名
     */
    private String secondTenantName;

    /**
     * 第一承租人工作单位
     */
    private String firstTenantCompany;

    /**
     * 第二承租人工作单位
     */
    private String secondTenantCompany;

    /**
     * 第一承租人身份证
     */
    private String firstTenantIdCard;

    /**
     * 第二承租人身份证
     */
    private String secondTenantIdCard;

    /**
     * 第一承租人人口
     */
    private String firstTenantPopulation;

    /**
     * 第二承租人人口
     */
    private String secondTenantPopulation;

    /**
     * 家庭成员姓名 1
     */
    private String familyMemberNameOne;

    /**
     * 家庭成员姓名 2
     */
    private String familyMemberNameTwo;

    /**
     * 家庭成员姓名 3
     */
    private String familyMemberNameThree;

    /**
     * 家庭成员姓名 4
     */
    private String familyMemberNameFour;

    /**
     * 家庭成员关系 1
     */
    private String familyMemberRelationshipOne;

    /**
     * 家庭成员关系 2
     */
    private String familyMemberRelationshipTwo;

    /**
     * 家庭成员关系 3
     */
    private String familyMemberRelationshipThree;

    /**
     * 家庭成员关系 4
     */
    private String familyMemberRelationshipFour;

    /**
     * 家庭成员单位 1
     */
    private String familyMemberCompanyOne;

    /**
     * 家庭成员单位 2
     */
    private String familyMemberCompanyTwo;

    /**
     * 家庭成员单位 3
     */
    private String familyMemberCompanyThree;

    /**
     * 家庭成员单位 4
     */
    private String familyMemberCompanyFour;

    /**
     * 建立租赁关系时间 1
     */
    private LocalDateTime leaseRelationshipTimeOne;

    /**
     * 建立租赁关系时间 2
     */
    private LocalDateTime leaseRelationshipTimeTwo;

    /**
     * 调节因素 1
     */
    private BigDecimal adjustmentFactorOne;

    /**
     * 调节因素 2
     */
    private BigDecimal adjustmentFactorTwo;

    /**
     * 调节因素 3
     */
    private BigDecimal adjustmentFactorThree;

    /**
     * 调节因素 4
     */
    private BigDecimal adjustmentFactorFour;

    /**
     * 调节因素 5
     */
    private BigDecimal adjustmentFactorFive;

    /**
     * 缴纳保证金 1
     */
    private BigDecimal depositPaidOne;

    /**
     * 缴纳保证金 2
     */
    private BigDecimal depositPaidTwo;

    /**
     * 归还保证金 1
     */
    private BigDecimal depositReturnedOne;

    /**
     * 归还保证金 2
     */
    private BigDecimal depositReturnedTwo;

    /**
     * 缴纳时间 1
     */
    private LocalDateTime paymentTimeOne;

    /**
     * 缴纳时间 2
     */
    private LocalDateTime paymentTimeTwo;

    /**
     * 归还时间 1
     */
    private LocalDateTime returnTimeOne;

    /**
     * 归还时间 2
     */
    private LocalDateTime returnTimeTwo;

    /**
     * 超面积计租
     */
    private BigDecimal excessAreaRent;

    /**
     * 政策减免
     */
    private BigDecimal policyReduction;

    /**
     * 合计月租
     */
    private BigDecimal totalMonthlyRent;

    /**
     * 其它变量
     */
    private BigDecimal otherVariable;

    /**
     * 地下室变量
     */
    private BigDecimal basementVariable;

    /**
     * 居住状态
     */
    private LocalDateTime liveStatus;

    /**
     * SN 值
     */
    private BigDecimal snValue;

    /**
     * 第一承租人电话
     */
    private String firstTenantPhone;

    /**
     * 第二承租人电话
     */
    private String secondTenantPhone;

    /**
     * 超面积单价
     */
    private BigDecimal excessAreaUnitPrice;

    /**
     * 超面积平米
     */
    private BigDecimal excessAreaSquareMeters;

    /**
     * BT 值
     */
    private BigDecimal btValue;

    /**
     * BZJG 值
     */
    private BigDecimal bzjgValue;

    /**
     * BTJG 值
     */
    private BigDecimal btjgValue;

    /**
     * IFZN 值
     */
    private BigDecimal ifznValue;

    /**
     * IFZN_OK 值
     */
    private BigDecimal ifznOkValue;

    /**
     * 人脸识别时间
     */
    private LocalDateTime faceAuthenticationTime;

    /**
     * 绑定的微信手机号
     */
    private String wechatPhoneNumber;

    /**
     * 微信手机号绑定时间
     */
    private LocalDateTime wechatPhoneBindTime;

    /**
     * 是否删除1是0否
     */
    private Integer isDel;

    /**
     * 是否欠费
     */
    @TableField(exist = false)
    private Integer isArrearage;

    @TableField(exist = false)
    private String familyMembersJsonStr;

    @TableField(exist = false)
    private JSONArray familyMembersJson;

    @TableField(exist = false)
    private Integer familyMembersSize;

}
